u`
Ep.201uό̃\bhv

otH[Fp.199 main02.cs

//p.199 main02.cs
using System;
class main02 {
    public static int Main(string[] args) { //R}hC󂯎萮Ԃ 
        if (args.Length != 1) { //1łȂ
            return -1; //IR[h-1Ԃ(ُI)
        } else {
            if (!Char.IsDigit(args[0][0])) { //0ڂ0ڂłȂ
                return -2;  //IR[h-12Ԃ(ُI)
            }
        }
        return int.Parse(args[0]); //0ڂ𐮐ďIR[hƂĕԂ
    }
}

p.201 ό̃\bh

EparamsL[[hƔzƂēnƂŁAό̃\bhł
E`F ANZXCq ߂l^ \bh(params ^[] ){c}
E̐ɐ͂ȂASĂ^A܂́A^̃NX̔hNX^ł邱
EF public int addall(params int[] n){c}
Ë͈[Y]ŗp\ŁAw肳ꂽ̐́ALengthvpeBœB

p.201 params01.cs

//p.201 params01.cs
using System;
class MyClass {
    public void show(params string[] animal) { //ό̃\bh
        if (animal.Length == 0) { //Sw肳ĂȂ
            return; //ɖ߂
        }
        for (int i = 0; i < animal.Length; i++) { //̐JԂ
            Console.WriteLine("{0}񂪂܂", animal[i]);
        }
    }
}
class params01 {
    public static void Main() {
        MyClass mc = new MyClass();
        mc.show(); //Sw肹ɌĂ
        mc.show("", "", ""); //3w肵ČĂ
    }
}

AWKFp.201 params01.cs

Efor͑OJԂȂ̂ŁuSw肳ĂȂ΁v̔f͕sv
E܂A̐JԂɂforeachpƁALengthvpeBpKv͂Ȃ
Eȏ

쐬

//AWKFp.201 params01.cs
using System;
class MyClass {
    public void show(params string[] animal) { //ό̃\bh
        foreach (var w in animal) { //S̕AJԂ
            Console.WriteLine("{0}񂪂܂", w);
        }
    }
}
class params01 {
    public static void Main() {
        MyClass mc = new MyClass();
        mc.show(); //Sw肹ɌĂ
        mc.show("", "", ""); //3w肵ČĂ
    }
}

⑫Fό̃\bh

Eparams̑OɁAʏ̈`łB^قȂĂ܂ȂB
@F public void show(int i, params string[] animal) {c}
Eparams̑OɁAʏ̈𕡐`łB^قȂĂ܂ȂB
@F public void show(int i, double d, params string[] animal) {c}
Eʏ̈͏ȗłȂ̂Œ
@F public void show(int i, params string[] animal) {c} ̏ꍇAĂяo
@ushow()v܂́ushow(, ,c,)vłKv
Eparams͖̈łKvAP`łȂ
Eό̃\bhI[o[[h\AmɌĂѕł邱ƂKv
EāAparamŝ݂̃\bh𕡐LqƁAȂł̌Ăяo̓G[ɂȂ
@F public void show(params string[] animal) {c} ƁA
@@@ public void show(params double[] animal) {c} ꍇAshow()ƂƃG[
E܂Aparams̑OɁAparamsƓ^̒ʏ̈\bhLqƁAG[ɂ͂ȂȂAparamŝ݂\bh́AȂ̏ꍇĂяo
@F public void show(params string[] animal) {@} ƁA
@@@ public void show(string s, params string[] animal) {A} ꍇAG[ɂ͂ȂȂA
@@@ show(,c)ƂƏɇAĂ΂Ashow()Ƃꍇɂ̂݇@Ă΂

p.202 ÓIo

Eʏ̃CX^XϐA\bhȂǂ̃óANX琶IuWFNgɊ܂܂
EāAIuWFNgwQƕϐpāuQƕϐ.ovŗp
EAConsoleNXWrite\bĥ悤ɁuConsole.WritevƁuNX.ovŗpł̂A̓oNXɊ܂܂Ăi^j
ÉANXɊ܂܂Ă郁oÓIoƂAIuWFNgɊ܂܂Kvʂȏꍇɗpł邪Apɂ͐
EÓIf[^o̒`F ANZXCq static ^ ϐ;
EÓI\bh̒`F ANZXCq static ߂l^ \bh(){c};

p.203 static01.cs

//p.203 static01.cs
using System;
class MyClass {
    public static int x; //ÓIf[^o
    public static void showX() { //ÓI\bh
        Console.WriteLine("x = {0}", x);
    }
}
class static01 {
    public static void Main() {
        MyClass.x = 10; //CX^X𐶐ɁuNX.ovŗp
        MyClass.showX(); //CX^X𐶐ɁuNX.\bh()vŗp
    }
}

p.204 ÓINX

ESẴoÓIłNX́AÓINXƂĂƂŁAAĐÓIł͂ȂoꂽAÓIoCX^Xoɏꂽ肷邱Ƃh~łB

p.204 static02.cs

//p.204 static02.cs
using System;
static class MyClass { //ÓINX
    public static int x; //ÓIf[^o
    public static void showX() { //ÓI\bh
        Console.WriteLine("x = {0}", x);
    }
}
class static01 {
    public static void Main() {
        MyClass.x = 10; //CX^X𐶐ɁuNX.ovŗp
        MyClass.showX(); //CX^X𐶐ɁuNX.\bh()vŗp
        Console.WriteLine(MyClass.X);
    }
}

p.205 ÓIoƃCX^Xo̍

EP̃NXɐÓIoƃCX^Xo݂邱Ƃ\
EAÓI\bh̓CX^XoɃANZXłȂ̂ŁAL͕s
@@ ÓI\bh̒ŃCX^Xϐp
@A ÓI\bhCX^X\bhĂяo
E܂AÓI\bhł͎IuWFNgthis͎gȂ

p.205 static03.cs

//p.205 static03.cs
using System;
class Cat {
    static int NoOfTail; //͔̐LʂȂ̂ŔLNXɏÓIϐ
    string Name; //O͔Lʂł͂ȂIuWFNgɏCX^Xϐ
    public void SetName(string strName) { //CX^XϐCX^X\bh
        Name = strName; //CX^Xϐɑ
    }
    public void ShowCat() { //CX^XϐCX^X\bh
        if (Name == null) { //CX^Xϐp
            Console.WriteLine("Oݒ肳Ă܂");
            return;
        }
        Console.WriteLine("L̖O{0}Ŕ̐{1}{ł",
            Name, NoOfTail); //CX^XϐƐÓIϐƂ\
    }
    public static void setCatTail(int no) { //ÓIϐ݂̂ÓI\bh
        //ŃCX^XtB[hɃANZXs
        //Name = "}CP";
        NoOfTail = no; //ÓIϐɑ
    }
}
class static03 {
    public static void Main() {
        Cat.setCatTail(1); //ÓI\bhpĔLʂ̔̐ݒ
        Cat mycat = new Cat(); //CX^X@𐶐
        Cat yourcat = new Cat(); //CX^XA𐶐
        mycat.ShowCat(); //@̃CX^X\bhĂ
        mycat.SetName("}CP"); //
        yourcat.SetName("pgVA"); //ÃCX^X\bhĂ
        mycat.ShowCat(); //@̃CX^X\bhĂ
        yourcat.ShowCat(); //ÃCX^X\bhĂ
    }
}

p.207 vpeB

Ef[^oւ̒l̐ݒAf[^o̒l̓ǂݏóAf[^opublicɂΎRɂł邪AsK؂Ȓl̐ݒAz肳ĂȂǂݏo邱ƂȂB
EŁAf[^oprivateɐݒ肵Al̐ݒl̓ǂݏóA\bhoRɂ邱ƂJvZ(p.4Ap.166)Ƃ
Ȅꍇɗpl̐ݒl̓ǂݏop̃\bhANZbTƂ
EANZbT̋LqɓKʂȃ\bh̋Lq@vpeBŁAϐƓlɗpł
E`F public ^ vpeB { get {c; return l⎮;} set {c;} }
@ ^͈f[^oɍ킹
@ get̒ɂăf[^o̒lԂ
@ set̒ł͊O^lvalueL[[hœ邱ƂłAʏAf[^oɑ
E{IȒ`F public ^ vpeB { get {return ϐ;} set {ϐ = value;} }
E̍ӂɃvpeBw肷ƁAset̓esBFvpeB = l;
E̍ӈȊOɃvpeBw肷ƁAget̓esBFConsole.Write(vpeB);
Egetset̂ǂ炩ȗ\ŁAsetȗ邱ƂŊO̒l̐ݒ֎~(ǂݍݐp)ł
EvpeBŕsK؂Ȓl̐ݒhɂ́AsetɂĒl̃`FbNsΗǂ
@F public double BH { set { if(value > 0) Height = value; } } //g͐̐̂ݐݒ\

p.208 prop01.cs

//p.208 prop01.cs
using System;
class MyClass {
    double bl; //J̃CX^Xϐ
    public double blprop { //CX^Xϐblp̃vpeB
        get { return bl; } //l̓ǂݏoiureturn vj
        set { bl = value; } //l̐ݒŁAublprop = l⎮vƂƌĂяo
    }
}
class prop01 {
    public static void Main() {
        MyClass mc = new MyClass();
        mc.blprop = 165.2; //vpeBsetĂяo
        Console.WriteLine("bl = {0}", mc.blprop); //vpeBgetĂяo
    }
}

p.209 prop02.cs

//p.209 prop02.cs
using System;
class BMI {
    double bw, bl; //J̃CX^Xϐő̏dAg
    public double blprop { //gp̃vpeB
        get { return bl; }
        set {
            if (value <= 0) { //l0ȉH
                Console.WriteLine("g0܂͕̒l͐ݒł܂");
                return; //IĖ߂
            }
            bl = value; //gɑl
        }
    }
    public double bwprop { //̏d̃vpeB
        get { return bw;  }
        set {
            if (value <= 0) { //l0ȉH
                Console.WriteLine("̏d0܂͕̒l͐ݒł܂");
                return; //IĖ߂
            }
            bw = value; //̏dɑl
        }
    }
    public double CalcBMI() {
        if (bl == 0.0 || bw == 0.0) {
            Console.WriteLine("f[^ZbgĂ܂");
            return 0.0;
        }
        return bw / Math.Pow(bl, 2.0); //BMIlvZĖ߂
    }
}
class prop02 {
    public static void Main() {
        BMI mybmi = new BMI();
        double bl, bw; //gȀd
        do { //JԂJn
            Console.Write("g(m)--- ");
            string strBl = Console.ReadLine();
            bl = double.Parse(strBl);
            mybmi.blprop = bl;
        } while (bl <= 0.0); //g0ȉ̒l͂ĂԌJԂȂ
        do { //JԂJn
            Console.Write("̏d(kg)--- ");
            string strBw = Console.ReadLine();
            bw = double.Parse(strBw);
            mybmi.bwprop = bw;
        } while (bw <= 0.0); //̏d0ȉ̒l͂ĂԌJԂȂ
        Console.WriteLine("bl = {0}, bw = {1}", 
            mybmi.blprop, mybmi.bwprop); //vpeBŐgƑ̏d𓾂ĕ\
        Console.WriteLine("BMI = {0:#.#}", mybmi.CalcBMI());
    }
}

p.211iÓIvpeBj

EÓIf[^ô݂vpeB͐ÓIvpeBɂƗǂ
EƁuNX.vpeBvňƂ\ɂȂ
EAÓIvpeB̓CX^XoɃANZXłȂ̂ŁAL͕s
@@ ÓIvpeB̒ŃCX^Xϐp
@A ÓIvpeBCX^X\bhĂяo

p.211 prop03.cs

//p.211 prop03.cs
using System;
class Test {
    static int x; //ÓIf[^o
    public static int myprop { //ÓIvpeB
        get { return x; }
        set { x = value; }
    }
}
class prop03 {
    public static void Main() {
        Test.myprop = 10; //ÓIvpeB(NX.vpeB)pĒl
        Console.WriteLine("Test.myprop = {0}", Test.myprop); //ÓIvpeBpĒl𓾂
    }
}

p.212 CfNT

EɃf[^ołz񓙂vpeBƓlɈd|CfNT
EvpeBƂ͈قȂACfNTɂ͖OȂuCX^X̎Qƕϐ[Y]v̌`ŁAz̗vf
E`F public ^ this[CfbNX^ CfbNX] { get {c; return l⎮;} set {c;} }
@ ^͈z񓙂ɍ킹
@ get̒ɂĔz񓙂̗vf[CfbNX]̒lԂ
@ set̒ł͊O^lvalueL[[hœ邱ƂłAʏAvf[CfbNX]ɑ
E{IȒ`F public ^ this[int i] { get {return z[i];} set {z[i] = value;} }
E̍ӂɎQƕϐ[Y]w肷ƁAset̓esBFQƕϐ[0] = l;
E̍ӈȊOɎQƕϐ[Y]w肷ƁAget̓esBFConsole.Write(Qƕϐ[0]);

oFAWKFp.201 params01.cs

\F p.212uCfNTv̕⑫p.213uindex01.csv
